package com.demo.common.utils.encrypt;

/**
 * @author pengj
 * @description BASE64加密解密
 * 注意，sun.misc包是Sun公司提供给内部使用的专用API，在java API文档中我们看不到任何有关BASE64影子，不建议使用。
 * Apache的实现：（建议使用这种方式，当然，自己实现也可以）
参考org.apache.commons.codec.binary.Base64
下载地址：http://commons.apache.org/codec/download_codec.cgi
 * @date 2017-12-12 21:37
 */

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

/** *  */
public class BASE64 {
    /** * BASE64解密 * @param key * @return * @throws Exception */
    public static byte[] decryptBASE64(String key) throws Exception {
        return (new BASE64Decoder()).decodeBuffer(key);
    }

    /** * BASE64加密 * @param key * @return * @throws Exception */
    public static String encryptBASE64(byte[] key) throws Exception {
        return (new BASE64Encoder()).encodeBuffer(key);
    }

    public static void main(String[] args) throws Exception {
        String data = BASE64.encryptBASE64("http://aub.iteye.com/".getBytes());
        System.out.println("加密前：" + data);
        byte[] byteArray = BASE64.decryptBASE64(data);
        System.out.println("解密后：" + new String(byteArray));
    }
}